Position-based laser range finder

ABSTRACT

Techniques are provided for implementing a system for determining the range to a target object and orienting a map. In implementations, GPS data is used to determine the location of the system and an approximate distance from that location to the target. Based on the approximate distance, one or more parameters of operation of the system may be set. Modes of operation may be entered to further adjust parameters of operation. An optical pulse may then be projected at the target and its reflections collected and analyzed to calculate a distance measurement. A visual display may be adjusted based on the calculated distance estimate to the target.

RELATED APPLICATIONS

The present application is a continuation of, and claims prioritybenefit to, co-pending and commonly assigned U.S. non-provisional patentapplication entitled, “POSITION-BASED LASER RANGE FINDER,” applicationSer. No. 15/445,484, filed Feb. 28, 2017, which in claims prioritybenefit of earlier-filed U.S. Provisional Patent Application No.62/349,891, filed on Jun. 14, 2016, and entitled “Improved Golf LaserRangefinder.” The identified earlier-filed applications are herebyincorporated by reference in their entirety into the presentapplication.

BACKGROUND

Optical laser rangefinders are often used by golfers to measure distanceto a flagstick or other hole features. In most situations, the generallocation of the green is static, and thus may be contained incartographic data, but the exact location of the hole on the greenchanges from day to day. Accurately measuring the distance to aflagstick in the hole can be difficult for a number of reasons,including the small cross-sectional area of the flagstick for targeting,a significant distance between a user and the hole, hand jitter of theuser, or the obscuring effect of environmental objects such as trees.

SUMMARY

Embodiments provide an optical rangefinder system that provides a userwith an estimation of the position of a target. A first embodimentincludes a system for determining a position of a target comprising arangefinder, a communications module, a display, a memory unit storing aset of cartographic data, and one or more processors. The processor(s)are operable to obtain the geographic location of the system from thecommunications module, determine an approximate range envelope to thetarget, adjust an operating parameter of the system based on that rangeenvelope, performing a rangefinding operation based on the adjustedoperating parameter, and display the range estimate on the display. Therangefinder includes a transmitter operable to emit one or more pulsestowards the target and a receiver operable to receive reflections of thepulses. The communications module may be a GPS receiver or maycommunicate with a GPS receiver housed in a mobile electronic device.

For example, using a device comprising a GPS receiver, a heading sensor,and cartographic data corresponding to a hole, an embodiment uses theGPS sensed location and cartographic data to determine a maximum andminimum range to a target flagstick. The device may then perform a lasermeasurement of the distance to the flagstick, using the maximum andminimum ranges to filter out signals reflected from objects in theforeground or background.

In a second embodiment, a system for determining a position of a targetcomprises a rangefinder, a communications module, a display, a memoryunit storing a set of cartographic data, and one or more processors. Thesystem may further include an orientation determining component, such asa compass heading sensor, which is operable to determine the orientationof the system. The one or more processors may cause the system to entera mode of operation based on a user activation, the geographic location,and/or the sensed orientation of the device. One or more operatingparameters of the system may be adjusted by the one or more processorsbased on the mode of operation and/or an approximate range to thetarget. The processor(s) are operable to calculate a range estimate ofthe target using the rangefinder based on the adjusted operatingparameters and display the range estimate on the display. The modes ofoperation may correspond to a scanning, holding, aiming, or target seekfunction of the system.

In a third embodiment, a system for determining a position of a targetcomprises a rangefinder, a communications module, an orientationdetermining component, a display, a memory unit storing a set ofcartographic data, and one or more processors. The one or moreprocessors may cause the system to enter a target seek mode based on thegeographic location and the orientation of the system. One or moreoperating parameters of the system may be adjusted by the one or moreprocessors based on the target seek mode and/or an approximate range tothe target. The processor(s) are operable to calculate a range estimateof the target using the rangefinder based on the adjusted operatingparameters and display the range estimate on the display. The system mayfurther comprise a camera, which the one or more processors may utilizeto capture an image of the proximity of the target and search pixels inthat image for information indicative of the target.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

The figures described below depict various aspects of the system andmethods disclosed herein. It should be understood that each figuredepicts an embodiment of a particular aspect of the disclosed system andmethods, and that each of the figures is intended to accord with apossible embodiment thereof. Further, whenever possible, the followingdescription refers to the reference numerals included in the followingfigures, in which features depicted in multiple figures are designatedwith consistent reference numerals.

FIG. 1 illustrates an exemplary golfing situation in which embodimentsof the system may be used;

FIG. 2 is a schematic illustration of an exemplary position and distancemeasurement system 200 in accordance with an embodiment of thedisclosure;

FIG. 3 is a perspective illustration of one embodiment of a targetingdevice;

FIG. 4 is an illustration of a first method flow 400, according to anembodiment;

FIG. 5 is a first schematic illustration example of a user interfacescreens that may be displayed in conjunction with a position anddistance measurement system, according to an embodiment;

FIG. 6 is a second schematic illustration example of a user interfacescreens that may be displayed in conjunction with a position anddistance measurement system, according to an embodiment;

FIG. 7 is a third illustration example of a user interface screens thatmay be displayed in conjunction with a position and distance measurementsystem, according to an embodiment;

FIG. 8 illustrates the reflectivity of common terrestrial materialslikely to encountered around the golf course; and

FIG. 9 illustrates a method flow 900, according to an embodiment.

DETAILED DESCRIPTION

Overview

The following text sets forth a detailed description of numerousdifferent embodiments. However, it should be understood that thedetailed description is to be construed as exemplary only and does notdescribe every possible embodiment since describing every possibleembodiment would be impractical. In light of the teachings anddisclosures herein, numerous alternative embodiments may be implemented.

Embodiments are disclosed describing an optical-based rangefindingsystem for use in conjunction with cartographic data. As seen in FIG. 1,the system may include one or more electronic targeting devices 202operated by a user to determine the distance to and/or position of atarget 106, such as the flagstick of a golf hole. Embodiments may usestored information related to a proximity of the target, such as green104, to reduce the impact of signals from unintended targets, such astrees 110 and 112. As used in this description, the term “flagstick” isintended to include both the flag and pole portions of the flag placedin a golf hole.

Embodiments of systems disclosed may include one or more processorsoperable to calculate a range estimate of the target by performing arangefinding operation with a rangefinder component having an opticaltransmitter and receiver. The optical transmitter is operable totransmit one or more pulses of a light beam towards a target. Therangefinding operation is based, at least in part, on one or moreoperating parameters that are determined by the system based on thecartographic data 214 and the sensed geographic location of the system.

The cartographic data 214 may include a map of the proximity of thesystem 200 and the target 106. Cartographic data 214 may includecardinal directions, elevations, or any other navigation or orientationdata. The cartographic data 214 may further include, in someembodiments, an approximate range envelope of the target. For example,when used for rangefinding of a target golf flagstick, the cartographicdata 214 may include data indicating the position of the green, hazards,tees, or any other location of interest for a particular hole or golfcourse.

The exact location of a hole on a green is variable from day to day, butit will usually be somewhere within the boundaries of the green. Thus,cartographic data 214 stored in memory 212 may include a range envelopefor possible positions of the hole based on data indicating greenlocations and the sensed geographic position of the system. The rangeenvelope may, for example, be defined by a maximum and minimum rangefrom the geographic location of the system. Based on the range envelope,an operating parameter may be adjusted before, during, and/or afteremitting one or more pulses from a transmitter portion of therangefinder and subsequent reception of the reflections of the pulses bya receiver portion of the rangefinder to improve and/or speed anestimation of the distance to the target.

The system may, in some embodiments, collect a plurality of rangeestimates of the range to the target and output a final range estimateto the user via a display when a threshold number of the range estimatesagree on a particular range estimate. The threshold number that mustagree may be set by any means, such as manually by a user, by a remotecontrol of the system from a remote location, from data stored inmemory, or by a process performed by one or more processors of thesystem.

One or more modes may be entered by the system manually and/orautomatically based on sensed values such as the geographic location ofthe system and/or a sensed orientation of the system to further adjustthe one or more operating parameters. In some embodiments, modes ofoperation may account for a use of the system, a movement pattern,and/or may provide targeting assistance to a user of the system.

Hardware

FIG. 2 is an illustration of a block diagram of an exemplaryrangefinding system 200 in accordance with an embodiment of thedisclosure.

In some embodiments, targeting device 202 may act as a standaloneelectronic device and not require communications with external computingdevices such as mobile device 250 or remote server 260. In otherembodiments, which are further discussed below, targeting device 202 maycommunicate with and/or work in conjunction with one or more of externalcomputing devices 250 and/or 260.

Targeting device 202, one or more mobile devices 250, and/or one or moreremote servers 260 may be configured to communicate with one anotherusing any suitable number of communication networks and wired and/orwireless links (e.g., communication network 270, wired and/or wirelesslinks, etc.) in conjunction with any suitable number and type ofcommunication protocols.

In an embodiment, one or more of mobile devices 250 and/or remoteservers 260 may include any suitable number and/or type of computingdevices configured to communicate with and/or exchange data withtargeting device 202. For example, one or more of mobile devices 250 maybe implemented as a handheld computing device (e.g., smartphone, tablet,laptop, netbook, notebook, pager, personal digital assistant (PDA),wearable computing device, smart glasses, a smart watch or a bracelet,etc.), or any other suitable type of computing device capable of wiredand/or wireless communication, while one or more of remote servers 260may be implemented as one or more cloud data services, web servers,databases, etc.

In an embodiment, targeting device 202 may communicate with one or moreof mobile devices 250 and/or remote servers 260 to send data to and/orto receive data from mobile devices 250 and/or remote servers 260. Forexample, targeting device 202 may communicate with one or more mobiledevices 250 to receive updated cartographic data 214. To provide anotherexample, targeting device 202 may communicate with one or more remoteservers 260 to receive golf course data and/or to send data collected,measured, and/or generated by targeting device 202 to remote servers 260(e.g., geographic position data, orientation data, etc., as furtherdiscussed below).

Communication network 270 may include any suitable number of nodes,additional wired and/or wireless networks, etc., in various embodiments.For example, in an embodiment, communication network 270 may beimplemented with any suitable number of base stations, landlineconnections, internet service provider (ISP) backbone connections,satellite links, public switched telephone network (PSTN) connections,local area networks (LANs), metropolitan area networks (MANs), wide areanetworks (WANs), any suitable combination of local and/or externalnetwork connections, etc. To provide further examples, communicationnetwork 270 may include wired telephone and/or cable hardware,satellite, cellular phone communication networks, etc. In variousembodiments, communication network 270 may provide targeting device 202with connectivity to network services, such as Internet services, forexample.

Communication network 270 may be configured to support communicationsbetween targeting device 202 and remote server 260 in accordance withany suitable number and/or type of wired and/or wireless communicationprotocols. Examples of suitable communication protocols may includepersonal area network (PAN) communication protocols (e.g., BLUETOOTH),Wi-Fi communication protocols, radio frequency identification (RFID)and/or a near field communication (NFC) protocols, cellularcommunication protocols, Internet communication protocols (e.g.,Transmission Control Protocol (TCP) and Internet Protocol (IP)), etc.

In another embodiment, targeting device 202 need not communicate withone or more of mobile devices 250 and/or remote server 260. For example,targeting device 202 may operate as a standalone rangefinding,positioning, and navigation device that is carried and operated by auser to perform various functions.

Targeting device 202 may be implemented as any suitable type of portableand/or mobile electronic device configured to function as a rangefindingand target positioning system. Embodiments include targeting device 202implementing any suitable combination of these functions. Targetingdevice 202 may implement some of these functions without implementingothers.

In an embodiment, targeting device 202 may include a rangfinder 204, acommunications module 210, a memory unit 212, a display 216, one or moreprocessors 218, and orientation determining component 220, and a camera222. Targeting device 202 may further include a power source 224 and/orUser Controls 226. Targeting device 202 may include additional elementssuch as, for example, memory controllers, memory card slots, ports,interconnects, etc., which are not described herein for purposes ofbrevity.

Communications module 210 may be configured to support any suitablenumber and/or type of communication protocols to facilitatecommunications between targeting device 202 and one or more of mobiledevices 250 and/or remote server 260. Communications module 210 may beconfigured to receive any suitable type of information via one or moreof mobile devices 250 and/or remote server 260. Communications module210 may be implemented with any suitable combination of hardware and/orsoftware to facilitate this functionality. For example, communicationsmodule 210 may be implemented with any number of wired and/or wirelesstransceivers, ports, connectors, antennas, etc.

Communications module 210 may be configured to facilitate communicationswith various mobile devices 250 and/or servers 260 using different typesof communication protocols. For example, communications module 210 maycommunicate with a mobile computing device via a wireless Bluetoothcommunication protocol (e.g., via wireless link) and with a laptop or apersonal computer via a wired universal serial bus (USB) protocol (e.g.,via a wired link). To provide another example, communications module 210may communicate with a traffic aggregation service via network 270 usinga wireless cellular protocol. Communications module 210 may beconfigured to support simultaneous or separate communications betweentwo or more of mobile devices 250 and/or remote servers 260.

As further discussed below, a user interface 502 may be configured tofacilitate user interaction with targeting device 202 and/or to providefeedback to a user. In an embodiment, a user may interact with userinterface 502 to change various modes of operation, to initiate certainfunctions, to modify settings, set options, etc., which are furtherdiscussed below.

For example, user interface 502 may include a user-input device such asan interactive portion of display 216 (e.g., a “soft” keyboard, buttons,etc.) displayed on display 216, physical buttons integrated as part ofuser controls 226 of targeting device 202 that may have dedicated and/ormulti-purpose functionality, etc. To provide another example, userinterface 402 may cause visual alerts or icons to be displayed viadisplay 216 and/or audible alerts to be sounded. Audible alerts may besounded using any suitable device, such as a buzzer, speaker, etc.,which are not shown in FIG. 2 for purposes of brevity.

Display 216 may be implemented as any suitable type of displayconfigured to facilitate user interaction, such as a capacitive touchscreen display, a resistive touch screen display, etc. In variousaspects, display 216 may be configured to work in conjunction with usercontrols 226 and/or processor 218 to detect user inputs upon a userselecting a displayed interactive icon or other graphic, to identifyuser selections of objects displayed via display 216, etc. Inalternative embodiments, display 216 is not configured to accept userinteraction, and is merely used as a visual output device. In suchcases, user control of the device may be achieved, for example, usinguser controls 226 and or controlled remotely from a mobile device 250and/or remote server 260.

In some embodiments, communications module 210 may be configured toutilize any suitable communications protocol to facilitate determining ageographic location of targeting device 202. For example, communicationsmodule 210 may be configured to communicate with one or more satellites280 and/or wireless transmitters in accordance with a Global NavigationSatellite System (GNSS) protocol, to determine a geographic location oftargeting device 202, and to generate geographic location data. Wirelesstransmitters are not illustrated in FIG. 2, but may include, forexample, one or more base stations implemented as part of communicationnetwork 270.

For example, communications module 210 may be configured to utilize“Assisted Global Positioning System” (A-GPS), by receivingcommunications from a combination of base stations (that may beincorporated as part of communication network 270) and/or one or morefrom satellites 280. Examples of suitable global positioningcommunications protocol may include Global Positioning System (GPS), theGLONASS system operated by the Russian government, the Galileo systemoperated by the European Union, the BeiDou system operated by theChinese government, etc.

Additionally or alternatively, in embodiments communications module 210may receive a geographic location of the system 200 from one or moremobile devices 250. Each or any of the mobile devices 250 may beconfigured to utilize any suitable communications protocol to facilitatedetermining a geographic location, as described above. In a particularexample, a mobile device 250 may be a smart phone of the user 102 thatdetermines the geographic location of the system via an integrated GPSreceiver, and is operable to transmit that geographic location to thetargeting device 202 via communications module 210. This is intendedonly as example, and is not intended to be limiting. Any sort oflocation capturing technique performed through the use of communicationsmodule 210 is intended for inclusion within embodiments.

Processor 218 may be implemented as any suitable type and/or number ofprocessors, such as a host processor of targeting device 202, forexample. To provide additional examples, processor 218 may beimplemented as an application specific integrated circuit (ASIC), anembedded processor, a central processing unit (CPU) associated withtargeting device 202, a graphical processing unit (GPU), etc.Processor(s) 218 may be configured to communicate with one or more ofcommunications module 210, a memory unit 212, a display 216, rangefinder204, camera 222, and orientation determining component 220, via one ormore wired and/or wireless interconnections, such as any suitable numberof data and/or address buses, for example. These interconnections arenot shown in FIG. 2 for purposes of brevity.

Processor 218 may be configured to operate in conjunction with one ormore of communications module 210, a memory unit 212, a display 216, andorientation determining component 220, to process and/or analyze data,to store data to memory unit 212, to retrieve data from memory unit 212,to display information on display 110, to receive, process, and/orinterpret signals from rangefinder 204, to process user interactions viauser controls 226, to receive and/or analyze live video data capturedvia camera 222, to receive data from and/or send data to one or more ofmobile devices 250 and/or remote server 260, etc.

In accordance with various embodiments, memory unit 212 may be acomputer-readable non-transitory storage device that may include anysuitable combination of volatile memory (e.g., a random access memory(RAM) or non-volatile memory (e.g., battery-backed RAM, FLASH, etc.).Memory unit 212 may be configured to store instructions executable onprocessor 218, such as the various memory modules illustrated in FIG. 2and further discussed below, for example. These instructions may includemachine-readable instructions that, when executed by processor 218,cause processor 218 to perform various acts as described herein.

Memory unit 212 may also be configured to store any other suitable dataused in conjunction with targeting device 202, such as data receivedfrom one or more of mobile devices 250 and/or remote server 260 viacommunications module 210, range estimates from rangefinder 204 andinformation processed by processor 218, image data from camera 222,cartographic data 214, data indicative of target locations and rangeenvelopes by geographic location, etc.

Memory unit 212 may include a first portion implemented as integrated,non-removable memory and a second portion implemented as a removablestorage device, such as a removable memory card. For example, memoryunit 212 may include a SD card that is removable from targeting device202 and a flash memory that is not removable from targeting device 202.Data may be transferred from a first portion of memory unit 212 (e.g.,buffered live camera data) to a second portion of memory unit 212,thereby allowing a user to remove a portion of memory unit 212 to accessviewing data stored thereon on another device.

Orientation determining component 220 may include one or moreinclinometers, gyroscopes, accelerometers, etc. In embodiments,orientation determining component 220 may include a compass headingsensor, dead reckoning system, altimeter, or any other instrumentationthat may be operable to provide information to processor 218 indicativeof the orientation of targeting device 202. Alternatively, imagescaptured by camera 222 could be used to provide orientation data toprocessor 218 in embodiments.

FIG. 3 shows a perspective view of an example targeting device 202 thatmay be included in embodiments. The embodiment of FIG. 3 is intended forexample only, and is not intended to be limiting. The targeting device202 may be alternatively embodied as a digital camera, incorporated intoa handheld communication device or gun-like housing, or may be shaped asany other form and/or included as part of any other electronic device.In the embodiment shown in FIG. 3, a lens assembly 302 is provided fortargeting a target, projecting one or more pulses, receiving reflectionsof the one or more pulses, and in some embodiments capturing an image ofthe scene including the target and its proximity with a digital camera.In some embodiments, any of these functions may be performed by separatelens assemblies, while in other embodiments some of these functions maybe omitted altogether. Display 216 may be provided at the rear of thedevice 202 illustrated in FIG. 3 for user input, information output,and/or targeting.

Example Procedures

In embodiments, memory unit 212 includes instructions that, whenexecuted by processor 218, cause processor 218 to adjust one or moreoperating parameters and perform a rangefinding operation on a targetbased, at least in part, on the one or more operating parameters. In thediscussion below, the user 102 will be exemplified as a golfer and thetarget will be exemplified as a flagstick 106 on a golf course, but thisis not intended to be limiting. Embodiments may be utilized by any user102 to perform rangefinding operations using adjusted operatingparameters.

Returning to FIG. 1, a user 102 playing a hole of golf may use targetingdevice 202 to provide a range estimate of the distance to targetflagstick 106 on green 104. In general, a rangefinding operation isperformed by rangefinder 204 in targeting device 202 by emitting one ormore pulses towards target 106 with transmitter 206 and receivingreflections of the one or more pulses from the target using receiver208. For example, the pulses may provide a visible or infrared laser,which may be projected incident upon a target and reflected back to becaptured by the receiver 208. Processor 218 may then calculate a rangeestimate to the target 106 and display a representation of this estimateto the user 102 on display 216. As further discussed below, therepresentation of the range estimate displayed on display 216 mayinclude a distance to the target and/or a placement of an imagerepresenting the location of the target on a displayed map or image ofthe scene.

The target flagstick 106 has a small horizontal area for targeting andis, in many cases, a significant distance away from the user 102. Forexample, the flagstick 106 may only be about 4 centimeters in width, butmay be 80 meters away. The result of this geometry is that therangefinder 204 may capture many reflections of pulses from objectsother than target 106, such as foreground tree 110 or background trees112 illustrated in FIG. 1. These are intended only as examples, and arenot limiting. Unwanted reflections may come from any object within aproximity of a line traveled by a “beam” of pulses between transmitter206 and target 106, objects beyond target 106 in cases where the beam“misses” the intended target flagstick 106, e.g. slightly to the left orright, or optical scattering effects by the atmosphere. Capturedreflections from such unintended targets create noise and correspondingincorrect range estimates that must be accounted for by processor 218 togive an accurate range estimation to target 106.

One exemplary method 400 of accounting for reflections from unintendedtargets is illustrated in FIG. 4. In an embodiment, method 400 may beperformed by any suitable combination of one or more processors,applications, algorithms, and/or routines, such as processor 218executing instructions stored in one or more memory units 212, forexample, as discussed above for FIG. 2. Further in accordance with suchan embodiment, method 400 may be performed by one or more processorsworking in conjunction with one or more components within a mobiledevice, such as one or more processors 218 working in conjunction withone or more of communications module 210, mobile device(s) 250, remoteserver 260, etc. The steps of method 400 may be performed in anyreasonable order. Method 400 is only one example of an embodiment and isnot intended to be limiting.

Method 400 begins at step 402, in which transmitter 206 of rangefinder204 emits a pulse of a laser towards target 106. The laser pulse travelsa path from targeting device 202 towards target 106 until it strikes anobject, which may be the intended target 106 or an unintended targetsuch as trees 110,112. Regardless of what object is struck, at step 404,receiver 208 of rangefinder 204 captures a reflection of the laser pulseand provides data to one or more processors 218. Processor 218 may thencalculate a range estimate based on the provided data, indicative of therange and/or position of the object that was struck by the laser.

In the case where the laser struck the intended target flagstick 106,the rangefinding operation has, at this point, successfully calculated arange estimate of the target that may be displayed to the user 102 viadisplay 216. However, if the laser struck an unintended target, thecalculated range estimate will be wrong, and displaying this estimate tothe user 102 may cause him to miss badly on a subsequent golf shot. Inmany cases, a range estimate based on a laser reflection from anunintended target may differ from the actual distance to the intendedtarget by many meters.

If the exact geographic location of the target flagstick 106 could beretrieved from cartographic data 214 stored in memory unit 212, theapproximate distance between the targeting device 202 and targetflagstick could be calculated based on a sensed geographic location ofthe device, and range estimates differing from this approximate distancecould be simply disregarded by processor 218. Unfortunately, thelocation of target flagstick 106 usually changes from day to day, as thehole is moved to provide different challenges for golfers. This variableposition of the target means that cartographic data 214 stored in memory212 (and/or retrieved from mobile device 250 or remote server 260),cannot, in such cases, reliably indicate the absolute geographiclocation of the target flagstick 106.

However, the location of flagstick 106 will always be somewhere on green104, which does not move. Embodiments make use of this constraint on thepossible position of target flagstick 106 by determining, based oncartographic data 214, a range envelope of the target flagstick 106. Arange envelope provides an indication of the expected position of atarget, and may be defined by a minimum range from the geographiclocation of the system to the target and a maximum range from thegeographic location of the system to the target. In the examplesituation illustrated in FIG. 1, the range envelope extends from thefront 120 of green 104 to the back 130 of green 104. The minimum rangecould, in an embodiment, be calculated for the illustration of FIG. 1 asthe distance between the sensed geographic location of the targetingdevice 202 of the system 200 and the closest point on the green 120.Similarly, the maximum range could be calculated as the distance betweenthe sensed geographic location of the targeting device 202 of the system200 and the furthest point on the green 130. These minimum and maximumranges could then define a range envelope for filtering out bad rangeestimates using processor 218.

Returning to method 400 of FIG. 4, at step 406 processor 218 determinesa range envelope of expected range estimates of the target flagstick106. In embodiments, step 406 is performed by receiving a sensedgeographic location of the system from communications module 210 andfinding minimum and maximum ranges for the expected position of thetarget 106 based on cartographic data 214 stored in memory unit 212. Asdiscussed above, communications module 210 may be operable to sense thegeographic location of the system itself, and/or may be operable tocommunicate with one or more mobile devices 250 to obtain the sensedgeographic location of the system.

At step 408, the processor(s) 212 calculates a range estimate of thetarget based on the laser transmitted and received by rangefinder 204.The range estimate is then compared to the range envelope in step 410.In the embodiment of method 400, the range estimate is disregarded if itdoes not fall within the range envelope at step 412, and a newmeasurement may occur. If, however, the range estimate does fall withinthe range envelope, it may then be displayed to the user via display 216as a distance measurement and/or indicated position on a map.

The steps of method 400 are only one example of a positioning procedurethat embodiments may perform, presented for illustration. In general, inembodiments cartographic data 214 and the geographic location of thesystem are used to determine a range envelope for a target. Based on therange envelope, at least one operating parameter of the system is thenadjusted to improve, speed, and/or support performance of the system. Arangefinder may then be used to perform a rangefinding operation on thetarget based on the one or more operating parameters.

In embodiments processor 218 may adjust an operating parameter before,during, or after the transmission and reception of a laser pulse,depending on which operating parameter is being adjusted. For example,in the example discussed with regard to method 400, the adjustedoperating parameter is the maximum and minimum acceptable distances to acalculated range estimate. In this case, the operating parameter is usedafter a pulse reflection is received to determine whether or not theresulting range estimate should be disregarded.

In alternative embodiments, the adjusted operating parameter may be theburst rate or power level of the transmitter 206, which may likely beadjusted prior to transmission. For instance, the power level of thetransmitter may be increased for a range envelope that is very far away.In yet another embodiment, the measurement period of the rangefinder maybe an adjusted operating parameter. This list of operating parameters isnot meant to be exhaustive. Any operating parameter such as burst rateof one or more pulses transmitted by transmitter 206, processing gain ofprocessor 218, measurement period, power level of transmitter 206 and/orany other parameter that may advantageously affect the operation of thesystem may be adjusted. An embodiment may adjust any or all of theseoperating parameters one or more times to perform a rangefindingoperation.

In some embodiments, the system 200 may perform a plurality of rangeestimates based on many transmissions and/or receptions of pulses byrangefinder 204. In such embodiments, each particular rangefindingoperation may produce a single range estimate, which may be disregardedif it calculates a position of the target that is outside the rangeenvelope. Each acceptable range estimate may be stored in memory unit212 to collect a set of possible range estimates. In some embodiments,the set of range estimates may be averaged to determine a specific rangeestimate to be displayed to user 102 via display 216. In anotherembodiment, the range estimate that has been calculated the greatestnumber of times in the set of range estimates may be displayed to user102.

In other embodiments, multiple range estimates may be collected until athreshold number of range estimates agree on a specific range estimate,which is then presented to user 102 via display 216. In such anembodiment, the threshold number may be a static value stored in memoryunit 212 or may be a value that is determined dynamically based onsensed parameters by processor 218. For instance, the threshold valuefor range estimates in the set that must agree on a particular rangeestimate before it is displayed to user 102 may be set very high for arange envelope that is within 20 meters, because at such short range ahighly accurate range estimate can both be expected and achieved. Thisis intended only as one example—any sensed parameter may be used byprocessor 218 to dynamically select a threshold number of rangeestimates that must agree before a particular range estimate isdisplayed to user 102 via display 216.

In another embodiment, range estimates outside the range envelope maynot be disregarded by processor 218, but rather included in the set ofpossible range estimates stored in memory unit 212. In such anembodiment, processor 218 may select a higher threshold number for rangeestimates outside the range envelope. In this way, a specific rangeestimate to be displayed to user 102 via display 216 may be outside thecalculated range envelope, accounting for inaccuracy in the cartographicdata 214 and/or sensed geographic position of the system, but only ifthe confidence level of that specific range estimate is very high. Inthis embodiment, the threshold number for range estimates within therange envelope may be much lower, because these estimates fall withinthe region in which the target is expected to be.

In embodiments the range estimate may be displayed on a synthetic visiondisplay, such as illustrated on display 216 of FIG. 5. A syntheticvision display may show terrain, obstacles, and other landmarks in theirproximity to the user 102. The synthetic vision display shows theterrain as it appears from the user's perspective, such as backgroundtrees 112. The synthetic vision display may also assist the user inlow-visibility situations, such in foggy conditions or when attempting ablind shot from behind a tree. The synthetic vision may provide anoverlaid map 502, presenting, at least in part, information stored incartographic data 214 for the hole and nearby proximity of the system.The map may include an icon 504 indicating the current sensed geographiclocation of the system. Once a target position determination has beenperformed, an indication of the range estimate of the target may bepresented on the display to user 102 as pin icon 506 or range estimate508. These examples are intended neither as exclusive nor limiting. Anyrepresentation of the range estimate of the target that may be displayedto a user via display 216 is intended for inclusion within embodiments.In some embodiments, the representation of the range estimate is notoverlaid on an image or map, and is merely displayed as an alphanumericoutput to the user. In some embodiments, the representation may bedisplayed to the user via a display of a mobile device 250.

A targeting graphic 510 may be shown on the synthetic vision display soas to supplement the map data and other data that is typically displayedon the synthetic vision display. It should be appreciated that inembodiments, the display 216 may also display known parameters 512 ofthe target 106, such as the hole number, par, the cardinal directionheading, the altitude, and other parameters. Distances and othermeasured values may, of course, be presented to the user in anyappropriate unit such as meters, feet, yards, etc. As such, thetargeting graphic 510 may be displayed on the synthetic vision displayas indicative of these parameters. In other embodiments, the system mayinclude a camera 222 for taking a picture or video of the target 106 anddisplaying these elements along with picture or video on the syntheticvision display.

The display of the picture or video presented to user 102 on display 216may provide information overlaid on the display 216 assisting a user 102in locating the target. For example, in the synthetic displayillustrated in FIG. 6, an aiming reticle 602 is displayed to user 102,surrounding the location where transmitter 206 will project a pulse whenthe rangefinder 204 performs a rangefinding operation.

As seen in FIG. 7, a synthetic display may include an overlaid targetassist icon such as flag icon 710 to assist a user 102 in recognizingthe location of target flagstick 106 in an image captured by camera 222,as further discussed below. Further, FIG. 7 displays anotherrepresentation of a range estimate that may be presented to a user 102on display 216 when a position determination has been performed. Icons702 and 704 indicate visually to the user the estimated positions of thetargeting device 202 and target flagstick 106, respectively. Icons 706and 708 provide additional information to the user via display 216, thatof the approximate locations of the minimum and maximum ranges from thegeographic system of green 104, which may define the range envelope. Asseen in FIG. 7, the range estimation of “158 m” is displayed above flagicon 710, presenting yet another representation of the range estimate ofthe target flag stick 106.

It should be appreciated that, as used herein, “icon” and “graphic” mayrefer to any graphical representation of the respective information. An“icon” or a “graphic” may include graphics, pictures, photographs,words, numbers, symbols, lines, colors, opacity, cross-hatching, andother fill textures and visual representations of information. The“icon” or “graphic” may also change, alter, update, and delete as newinformation is obtained. For example, flagstick icon 506 and/or rangeestimate 508 may not appear until a range estimate is calculated. Assuch, the size, shape, location, orientation, and other aspects of thedisplay may update as this new information is obtained (e.g., as a rangeestimate is calculated).

Modes of Operation

In embodiments, processor 218 may cause the system, and in particulartargeting device 202, to enter a mode of operation in response to anactivation. The activation may come from instructions programmed intomemory unit 212, a manual input by user 102 through user controls 226 ordisplay 216 (in the case of a touch screen display), and/or may beprovided automatically by sensory components of system 200 in responseto one or more sensed parameters. Sensed parameters may include theorientation of the system as obtained from orientation determiningcomponent 220, camera 222, and/or the geographic location of the systemas obtained from communications module 210.

Upon entering a mode of operation, processor 218 may adjust one or moreoperating parameters, influencing the position determining and rangemeasurement methods disclosed. As previously discussed, such operatingparameters may include the processing gain of processor 218, ameasurement period, and/or the burst rate or power level of transmitter206. The operating parameter(s) adjusted may depend on the mode entered,as well as one or more sensed parameters of the system, in embodiments.Further, embodiments may adjust an operating parameter upon entering amode of operation, and then readjust the same operating parameter basedon a range envelope determined based on the geographic location of thesystem and cartographic data 214. Additionally or alternatively,embodiments may adjust an operating parameter upon entering a mode ofoperation, and the adjust a different operating parameter based on arange envelope determined based on the geographic location of the systemand cartographic data 214. Entering a mode of operation may be done atany point during a rangefinding and position determining processperformed by system 200.

For example, processor 218 may use an accelerometer functioning as anorientation determining component 220 in an embodiment to sense thattargeting device 202 is being held very still while user 102 uses usercontrols 226 to cause transmitter 206 in rangefinder 204 to generatepulses of a laser. The accelerometer may, in such a situation, measure alack of movement in the orientation of the rangefinder except fornatural hand jitter of the user 102. Additionally or alternatively, acompass heading sensor and/or inclinometer functioning as orientationdetermining component 220 may indicate to processor 218 that user 102has operated the targeting device 202 in a steady, held position for agiven amount of time. Processor 218 may, in response to a “holding”sensed orientation from orientation determining component 220, followinstructions stored in memory 212 to cause system 200 to enter a mode ofoperation known as a holding mode. Alternatively, user 102 may press abutton or turn a knob comprising user controls 226 to manually causesystem 200 to enter a holding mode.

During a holding mode, the user 102 is presumed to be targeting thetarget flagstick 106 directly, possibly because the flagstick is nearbyand/or visible. In such conditions, processor 218 may performrangefinding operations with lower power pulses, increased measurementrates, and approximate range data fed directly to display 216, asillustrated in FIG. 5. This is only a single example, and not intendedto be limiting. In another embodiment, upon entering a holding mode,processor 218 may adjust operating parameters to increase the beamspread of the rangefinder 204 such that a portion of the beam generatedby transmitter 206 is more likely to hit the target flagstick 106.Processor 218 may, in such an embodiment, physically adjust lensassembly 302 to allow more beam smear during a measurement. Additionallyor alternatively, the number of integrated pulses per measurement may bedecreased by processor 218, lowering processing gain to increase aneffective measurement rate of system 200 with a smaller penalty in itssensitivity. In embodiments of system 200, any particular operatingparameter may be adjusted upon entering a holding mode of operation toimprove, speed, and/or support an estimation of the distance to atarget. In particular, upon entering a holding mode, an operatingparameter may be adjusted to account for hand movement of a user 102holding the system 200.

If, instead of a holding state, orientation determining component 220senses a steady motion of targeting device 202 across a scene, processor218 may follow instructions stored in memory 212 to cause system 200 toenter a mode of operation known as a scanning mode. Alternatively, user102 may press a button or turn a knob comprising user controls 226 tomanually cause system 200 to enter a scanning mode. A scanning mode maybe useful in situations where the target flagstick 106 is difficult totarget and/or far away. A user may operate targeting device 202 in ascanning mode to sweep the targeting device 202 across the entire green104 of a golf hole, intending for the beam generated by rangefinder 204to, at some point during the sweeping motion, successfully hit thetarget flagstick 106.

In response to entering a scanning mode, an operating parameter may beadjusted by processor 218 to improve the likelihood that the rangefindersuccessfully hits the target, and that the reflection from that hit issuccessfully captured and selected for display to the user 102 viadisplay 216. For instance, in an embodiment, processor 218 may maximizeintegration time and/or burst repetition rates while in a scanning mode,causing a longer processing delay and power requirement, but a morerobust range estimate. Again, this is only one example the manner inwhich operating parameters that may be adjusted upon entering a scanningmode. Any operating parameter adjusted in any way in response toentering a scanning mode to improve, speed, and/or support an estimationof the distance to a target is intended for inclusion withinembodiments. In particular, upon entering a scanning mode, an operatingparameter may be adjusted to account for a scanning motion of the system200.

In an embodiment, processor 218 may cause system 200 to enter a mode ofoperation constituting an aiming mode, operable to assist user 102 inlocating, targeting, and/or successfully hitting target flagstick 106with one or more pulses from transmitter 206. For example, illustratedin FIG. 6 is a synthetic display that may be displayed to user 102 viadisplay 216 when processor 218 causes system 200 to enter an aiming modeof operation. FIG. 6 is only one example, and is not intended to belimiting. Aiming reticle 602 is presented, overlaid on an image capturedby camera 222 to assist user 102 in finding target flagstick 106 in themidst of other objects, and possibly from a great distance. In someembodiments, the image presented to user 102 via display 216 may bezoomed by processor 218 relative to the actual image captured by camera222. In another embodiment, processor 218 may steer aiming reticle 602and/or the scene imaged by camera 222 in a direction relative the actualtransmitter 206 pointing orientation based on accelerometer data of thetargeting device 202. This may imperceptibly drive the user 102 to aimthe targeting device closer towards the location of the target flagstick106. Non-uniformity in the distribution of tremor-induced angularmovement in azimuth and elevation as sensed by orientation determiningcomponent 220 relative to the center axis could be accumulated fromprevious uses in memory 212 to optimize the pointing orientation, makingthis method for appropriately usable with shorter effective measurementtimes.

In another embodiment, processor 218 may cause system 200 to enter amode of operation known constituting a target seek mode. Target seekmode may be initiated, for example, by the holding down of a measurementbutton on user controls 226 for an extended period. Alternatively oradditionally, target seek mode may be entered automatically by processor218 based on a combination of a cartographic data 214 from memory unit212, sensed geographic location provided by communications module 210,and a sensed orientation of the targeting device 202 from orientationdetermining component 220. For example, based on cartographic data 214related to a hole and the sensed geographic location from communicationsmodule 210, processor 218 may be able to conclude the directiontargeting device 202 must point to perform a rangefinding operation ontarget flagstick 106. Thereafter, if data from the orientationdetermining component 220 indicates that targeting device 202 is pointedin this direction, processor 218 may automatically cause system 200 toenter a target seek mode.

As before, entering target seek mode adjusts an operating parameter toimprove, speed, and/or support performance of the system. For instance,measurement rate may be increased to improve the likelihood that a validdistance is obtained as the transmit beam of pulses sweeps acrossflagstick 106 due to hand shake and/or the natural sweep of the beam asthe user 102 sights to the target. Adjusted parameters may be any ofthose described above or any others that may be useful in assisting inidentification of target flagstick 106.

Upon entering target seek mode, processor 218 may additionally capture,using camera 222, an image of the proximity of target flagstick 106 andsearch pixels of the image for information indicative of targetflagstick 106. For example, video processing by processor 218 of acentral grouping of pixels captured by camera 222 can be used toidentify and locate the flag and pole, providing a steady anchor for anysuperimposed display information on display 216 and helping to steer theuser 102 into the flag location if there is an angular bias betweenapparent azimuth and elevation to the flag location and the actualline-of-sight of the rangefinder. In some embodiments, processor 218 maycapture the location of target flagstick 106 by processing pixels in animage captured by camera 222 and display a flag icon 710 overlaid on theimage on display 216. This may be particularly useful for assisting theuser 102 in targeting during dark, misty, or foggy conditions.Overlaying a flag icon 710 may indicate a “pin lock” condition, thatprocessor 218 has confidently located the target flagstick 106 and isprepared to make or has made an accurate range estimate. Once a pin lockcondition is reached, if a user control 226 button remains depressed,processor 218 may cause labels, icons, or other graphics displayed ondisplay 216 to remain fixed firmly in place even if user 102 scans therangefinder away from the flagstick 106 to view other locations on thegreen 104.

Flag icon 710 is only one example of a target assist icon that may bepresented to the user 102 while in target seek mode. Additionally oralternatively, a cross-hair icon or reticle such as aiming reticle 602could be presented to user 102 on display 216 to assist in finding andtargeting flagstick 106. In some embodiments, processor 218 may use thecartographic data 214, sensed geographic location of the system, andorientation data of the system to display a target assist icon ondisplay 216 indicative of a direction to turn the device towards thetarget. For instance, given a known location and heading on a golfcourse from communications module 210 and orientation determiningcomponent 220, processor 218 could be operable to determine that a user102 is pointing a targeting device too far to the left to be able tosuccessfully perform a rangefinding operation on the target. Processor218 may then be operable to display an arrow pointing to the right ondisplay 216, informing the user that they should point targeting devicefurther to the right. The arrow constitutes a target assist icon, whichin embodiments may be flashing, colored, or presented in any otherattention-grabbing form.

In some embodiments, a spatial filtering algorithm may be employed andmay be optimized based on the range envelope. As a particular example,the sharp vertical and angular outline of the pole and flag of flagstick106 may be distinctive spatially relative to the softer gradations andcurved shapes of the natural background. A 0.75 inch diameter, 6 foottall flag pole at 250 yards provides a subtended azimuth angle ofroughly 80 microradians and an elevation angle of 7.8 milliradians.Assuming approximately 480 camera pixels for a 6-degree field of view(FOV), a FOV per pixel is 200 microradians. Thus, a one or two pixelwide vertical line roughly 40 pixels tall of flagstick 106 would be seenby camera 222.

This rectangular block of pixels surrounding the center of the targetfield may then be processed to create high contrast and to emphasizedistinguishing spatial characteristics between the flagstick 106 and thebackground scene First, the scene is processed to remove the dominatescene color (likely green) to improve contrast between the backgroundand the normally distinguishing pole and flag color. The image is thenconverted to grayscale to simplify downstream convolutional processing.The block of data is then spatially filtered using a convolutionoperator to accentuate narrow vertical features in the scene followed bya thresholding operation to eliminate background clutter and pixelnoise. Finally the image block is processed using convolution using anedge detection operator with an associated detection criteria based onthe degree of match between shapes in the field and the expected shape.The detection criteria could be based on distance because the maximumheight of the pole relative to the horizon is known, and thus thecriteria needed to calculate its vertical pixel extent. In most cases,the pixel subregion could be limited to a less than 10 pixels wide by100 pixels tall, taking into account the presence of pointinguncertainty and hand jitter relative to targeting graphic 510.

Embodiments may use reflectivity to improve the accuracy of positiondeterminations. As shown in FIG. 8, the reflectivity of commonterrestrial materials likely to encountered around the golf course andtheir dependence on optical wavelength may be stored in memory unit 212of the targeting device 202. In embodiments, the reflectivity of suchmaterials may be used by processor 218 to select a wavelength fortransmission by transmitter 206 or determine a successful capture of anoptical reflection from a target flagstick 106.

While reference has been made above to the various components andtechniques of embodiments, the description that follows will providefurther examples systems and processes that may be added in embodiments.The description below is intended to merely exemplify steps that may betaken in practice of operation of the embodiments and is not intended tobe limiting. Steps that may be performed in practice of some embodimentsare illustrated in FIG. 9 and herein described.

Turning now to FIG. 9, a flowchart illustrating the operation of amethod for determining a position of a target is depicted and referredto generally by reference numeral 900. At step 902, processor 218receives the geographic location of the system from communicationsmodule 210. As discussed above, communications module 210 may be a GPSreceiver, operable to sense the geographic location of the systemitself, and/or may be operable to communicate with one or more mobiledevices 250 to obtain the sensed geographic location of the system. Atstep 904, the system 200 retrieves cartographic data 214 for the sensedgeographic location, which may already be stored in memory 212 or may berequested from mobile device 250 and/or remote server 260. At step 906,the processor 218 receives orientation data of the system fromorientation determining component 220. Steps 902, 904, and 906 may beperformed in any order or simultaneously, though in most cases it isenvisioned that reception of the geographic location in step 902 wouldbe performed prior to retrieval of cartographic data 214 in step 904.

Similarly, steps 908 and 910 may be performed in any order orsimultaneously. At step 908, processor 918 uses the geographic locationof the system and the cartographic data 214 to determine a rangeenvelope for the target, such as target flagstick 106. The rangeenvelope may be defined by a minimum range from the geographic locationof the targeting device 202 and a maximum range from the geographiclocation of the targeting device 202. In step 910, processor 218 causessystem 200 to enter a mode of operation, which may be in response to thesensed orientation of the system and sensed geographic location of thesystem. In some embodiments, entering a mode of operation may further oralternatively be in response to a manual activation by a user and/or animage captured by camera 222 and subsequently processed by processor218. In response to entering a mode of operation, at step 912 a firstoperating parameter is adjusted based on the entered mode. Similarly, instep 914 a second operating parameter is adjusted in response to thedetermined range envelope. The first and second operating parameters maybe the same or distinct operating parameters in embodiments, and in thecase of distinct parameters may be adjusted in any order.

Transmitter 206 in rangefinder 204 then transmits one or more pulses asa beam of light towards target flagstick 106 in step 916. In step 918,reflections of the pulses are received by receiver 208 and provided toprocessor 218. Processor may then calculates a range estimate in step920, completing a rangefinding operation. The rangefinding operation isbased, at least in part, on the first and second operating parameteradjustments. A representation of the range estimate is then displayed toa user 102 in step 922, and in some embodiments may be stored in memoryunit 212.

It should be appreciated that, while the above disclosure is directedmainly to the field of golf, some embodiments may be employed for anyfield requiring accurate distance measurement to a target that islocated in a known area. Embodiments and techniques may be used in anysetting or field, such as hunting, aeronautics, and archery. Embodimentsand techniques may be particularly applied to military applications,such as targeting munitions at a target within a area having knowndimensions and position. The golf field discussed is merely exemplaryand should not be construed as limiting.

Although systems and methods for assisting a user with determining thedistance to a target golf flagstick 106 have been disclosed in terms ofspecific structural features and acts, it is to be understood that theappended claims are not to be limited to the specific features and actsdescribed. Rather, the specific features and acts are disclosed asexemplary forms of implementing the claimed devices and techniques.

1. A system for determining a range estimate to a target comprising: arangefinder including: a transmitter operable to emit one or more pulsestowards the target, and a receiver operable to receive reflections ofthe one or more pulses; a camera; a display; and at least one processoroperable to: acquire an image from the camera, identify a targetflagstick within the image acquired from the camera, present informationon the display compensating for an angular bias between the rangefinderand the target flagstick, calculate a range estimate to the targetflagstick using the rangefinder, and display, on the display, arepresentation of the range estimate of the target flagstick.
 2. Thesystem of claim 1, wherein the processor is further operable to controlthe display to superimpose information over the image acquired from thecamera.
 3. The system of claim 2, wherein the processor is configured tocontrol the display to superimpose a flag icon over the target flagstickwithin the image acquired from the camera.
 4. The system of claim 1,further including a communications module operable to obtain ageographic location of the system, and a memory unit storingcartographic data, wherein the processor is operable to estimate therelative location of the target flagstick using the geographic locationof the system and the stored cartographic data.
 5. The system of claim4, further including an orientation determining component for sensing anorientation of the system, and wherein the at least one processorincludes an aiming mode for assisting a user in aiming the rangefinderat the target flagstick based on the orientation of the system and thegeographic location of the system.
 6. The system of claim 5, wherein theorientation determining component is selected from the group consistingof an inclinometer, a compass heading sensor, a gyroscope, and anaccelerometer.
 7. The system of claim 1, wherein the communicationsmodule is a GPS receiver.
 8. The system of claim 1, further including ahousing to integrate the rangefinder, camera, display, and processor. 9.A system for determining a range estimate to a target comprising: arangefinder including: a transmitter operable to emit one or more pulsestowards the target, and a receiver operable to receive reflections ofthe one or more pulses; a camera; a communications module operable toobtain a geographic location of the system; a memory unit storingcartographic data; an orientation determining component configured tosense an orientation of the system; a display; and at least oneprocessor operable to: acquire an image from the camera, utilize thegeographic location of the system, the stored cartographic data, and thesensed orientation to generate target assistance information, controlthe display to present the generated target assistance information,identify a target flagstick within the image acquired from the camera,present information on the display compensating for an angular biasbetween the rangefinder and the target flagstick, calculate a rangeestimate to the target flagstick using the rangefinder, and superimpose,on the display, a representation of the range estimate of the targetflagstick over the image acquired from the camera.
 10. The system ofclaim 9, wherein the target assistance information includes a targetassist icon.
 11. The system of claim 9, wherein the target assistanceinformation indicates a relative direction a user should turn to viewthe target flagstick on the display.
 12. The system of claim 9, whereinthe processor is configured to control the display to superimpose a flagicon over the target flagstick within the image acquired from thecamera.
 13. The system of claim 9, wherein the orientation determiningcomponent is selected from the group consisting of an inclinometer, acompass heading sensor, a gyroscope, and an accelerometer.
 14. Thesystem of claim 9, wherein the communications module is a GPS receiver.15. The system of claim 9, further including a housing to integrate therangefinder, camera, display, and processor.